A chart or graph is described in Wikipedia as a type of information graphic or graphic organizer that represents tabular numeric data and/or functions. Charts are often used in an attempt to make it easier to understand large quantities of data and the relationship between different parts of the data. Charts can usually be read more quickly than the raw data that they come from. They are used in a wide variety of fields, and can be created by hand (often on graph paper) or by general purpose computers or specific computers using various different charting applications.
Traditional charts use well established and often poorly implemented ways of representing data. Many tools exist to help the user construct very sophisticated representations of data but that sophistication typically results in less meaningful charts.
It is known to use charting wizards such as those that are available in Excel and various other systems such as those provided by, for example, IBM. In addition there are multiple Business Intelligence (BI) tools available to users to enable users to analyze data in an attempt to create meaningful feedback. However, as the amount of data increases, so does the complexity of the visual representations created by the analysis of the data. These complex representations can end up swamping parts of the visual representation that are most required and relevant to an end user.
One known method of visualizing data is the heatmap. A heatmap identifies the values of individual and specific data points by allocating a specific color based on the data point value. For example, red may indicate that the data point value is high, and blue may indicate that the data point value is low. The color spectrum in between red and blue may then be used to indicate the interim values of other data points. If heat values in between data points are to be indicated, interpolation values need to be calculated to determine the heat values.
The heatmap graphic is particularly useful for showing the position and intensity of certain data values with respect to other data values and within a defined environment, such as a geographical area, temporal period or other environment. However, previous known methods of representing data using heatmaps merely indicate the values of the individual data points and don't identify any relative correlation between the data points other than their relative values. In particular, they do not provide any directional or flow correlation between data points.
It is known to create heatmaps using an inverse distance weighted (IDW) formula, such as a bell shaped curve. However, these methods are extremely complex and can cause artefacts, and so can be particularly problematic. It is also known to use a cubic spline method to create a heatmap, however this method is particularly CPU intensive.
The heatmaps produced by the above described methods can produce quite garish and intense maps that tend to confuse the eye of the reader due its non-organic structure.
FIG. 1, for example, is produced by rendering circles around a specific data point, where the color and diameter of the circle is based on a variable associated with the data point. That variable is only associated with the particular data point being represented. Color values in between two data points are interpolated based on the data point values of the two data points. The heatmap produced does not show any interrelationship between two data points, but merely shows each data point's value.
It is also known to produce what are termed “flow maps” which provide a user with an indication of flow from one point to another. However, these flow maps merely show flow from one point to another point in a single direction. Further, these types of flow maps do not provide an indication of how data points and the flow values affect surrounding areas depicted on the graphic representation.
The present invention aims to overcome, or at least alleviate, some or all of the mentioned problems, or to at least provide the public with a useful choice.